#ifndef _MB_CALLBACK_H_
#define _MB_CALLBACK_H_

// 输入寄存器
#define REG_INPUT_START 	1
#define REG_INPUT_NREGS 	125

// 保持寄存器
#define REG_HOLDING_START 	1			// 注：读保持寄存器最大支持125个
#define REG_HOLDING_NREGS 	125			// 注：写多个保持寄存器最大支持120个

// 线圈寄存器
#define REG_COILS_START     1			// 注：读线圈最大支持2000个
#define REG_COILS_SIZE      2000		// 注：写多个线圈最大支持1960个
										

// 离散输入寄存器
#define REG_DISC_START     1
#define REG_DISC_SIZE      2000


/* ----------------------- Static variables ---------------------------------*/
extern uint32_t usRegInputBuf[REG_INPUT_NREGS];

/* ----------------------- Static variables ---------------------------------*/
extern uint32_t usRegHoldingBuf[REG_HOLDING_NREGS];


/* ----------------------- Static variables ---------------------------------*/
extern uint8_t ucRegCoilsBuf[REG_COILS_SIZE / 8];	  //数量低于8个还需要验证一下，是否需要加1呢。


/* ----------------------- Static variables ---------------------------------*/
extern uint8_t ucRegDiscBuf[REG_DISC_SIZE / 8];	   //数量8的整数倍。

#endif